#include "AreaMapItem.h"
#include "MapHandle.h"
#include "AbstractAreaMapItem.h"

AreaMapItem::AreaMapItem(MapItemType::Type type)
: MapItem(type)
{

}

AreaMapItem::~AreaMapItem()
{

}

void AreaMapItem::setLineVisible(bool lineVisible)
{
	dynamic_cast<AbstractAreaMapItem*>(d_ptr)->setLineVisible(lineVisible);
}

bool AreaMapItem::getLineVisible() const
{
	return dynamic_cast<AbstractAreaMapItem*>(d_ptr)->getLineVisible();
}

void AreaMapItem::setLineWidth(double lineWidth)
{
	dynamic_cast<AbstractAreaMapItem*>(d_ptr)->setLineWidth(lineWidth);
}

double AreaMapItem::getLineWidth() const
{
	return dynamic_cast<AbstractAreaMapItem*>(d_ptr)->getLineWidth();
}

void AreaMapItem::setLineStyle(LineStyle::Style lineStyle)
{
	dynamic_cast<AbstractAreaMapItem*>(d_ptr)->setLineStyle(lineStyle);
}

LineStyle::Style AreaMapItem::getLineStyle() const
{
	return dynamic_cast<AbstractAreaMapItem*>(d_ptr)->getLineStyle();
}

void AreaMapItem::setLineColor(const QColor& lineColor)
{
	dynamic_cast<AbstractAreaMapItem*>(d_ptr)->setLineColor(lineColor);
}

const QColor& AreaMapItem::getLineColor() const
{
	return dynamic_cast<AbstractAreaMapItem*>(d_ptr)->getLineColor();
}

void AreaMapItem::setFillStyle(FillStyle::Style fillStyle)
{
	dynamic_cast<AbstractAreaMapItem*>(d_ptr)->setFillStyle(fillStyle);
}

FillStyle::Style AreaMapItem::getFillStyle() const
{
	return dynamic_cast<AbstractAreaMapItem*>(d_ptr)->getFillStyle();
}

void AreaMapItem::setFillColor(const QColor& fillColor)
{
	dynamic_cast<AbstractAreaMapItem*>(d_ptr)->setFillColor(fillColor);
}

const QColor& AreaMapItem::getFillColor() const
{
	return dynamic_cast<AbstractAreaMapItem*>(d_ptr)->getFillColor();
}

int AreaMapItem::pointIsInArea(const QPointF& lonlat) const
{
	return dynamic_cast<AbstractAreaMapItem*>(d_ptr)->pointIsInArea(lonlat);
}


